home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Amiga Tools 2
/
Amiga Tools 2.iso
/
virus
/
anticiclovir
/
anticiclovir.dok
< prev
next >
Wrap
Text File
|
1995-03-09
|
30KB
|
748 lines
Dokumentation von AntiCicloVir V2.3a 18.09.1994
=================================== ==========
Inhaltsverzeichnis:
1. Copyright
2. Wie benutze ich AntiCicloVir ?
3. Wie teste ich den Speicher auf Viren ?
4. Wie teste ich Dateiverzeichnisse auf Viren ?
5. Wie teste ich die Boot-Sektoren auf Viren ?
6. Wie teste ich den Disk-Validator auf Viren ?
7. Beschreibung einiger repraesentativer AMIGA-Viren:
- SCA
- BGS 9
- Bret Hawnes
- Disaster-Master
- IRQ
- Golden Rider
- SADDAM
8. Post
Copyright
AntiCicloVir ist nun Public Domain-Software und das bedeutet, dass Sie
AntiCicloVir jetzt sowohl zum privaten Gebrauch, als auch zum kommerziellen
Gebrauch verwenden koennen !
Sie koennen mit AntiCicloVir Ihre eigenen Disketten auf Viren testen, es zum
Schutz auf einer eigenen PD-Serie verwenden, und es jedermann zu jedem Preis
weitergeben.
Sie duerfen den Assembler-Quelltext dieses Programmes lesen, jede beliebige
Routine aus dem Quelltext fuer eigene Programme verwenden, oder auch Teile
des Assembler-Quelltextes aendern oder ergaenzen.
Wenn Sie selbst ueber Assembler-Sprachkenntnisse verfuegen, dann werden Sie
schnell bemerken, wie simpel es ist, diesen Viruskiller so zu erweitern, dass
er neue Viren im Speicher und auf Diskette erkennt !
Sie duerfen den Quelltext von AntiCicloVir auch als Basis fuer die
Programmierung eines eigenen Virenkillers verwenden !
Doch es bestehen einige Beschraenkungen:
Sie duerfen jedoch ein derartig veraendertes Programm nicht mehr unter dem
Namen `AntiCicloVir` verbreiten, weil ich in Zukunft weitere (und bessere)
Versionen von AntiCicloVir schreiben werde und denke, dass es nicht besonders
nuetzlich sein duerfte, wenn dann mehrere Programme unter dem selben Namen
existieren !!!!!!
Weiterhin ist jegliche Aenderung am Inhalt dieser Dokumentation, sowie am
Inhalt der Datei `VIRUSLIST.DOC`, untersagt !!!
Nun ja, ich hoffe, dass im Assembler-Quelltext von AntiCicloVir keine
ernsthaften, widerlichen, ekelhaften Bugs (Fehler) existieren, doch ich
glaube, dass es kein Programm ohne Bug gibt, so dass ich auch KEINE
Garantie fuer die fehlerfreie Arbeit von AntiCicloVir geben kann ...
Ich werde nicht die Verantwortung fuer irgendwelche Schaeden uebernehmen, die
direkt oder indirekt bei fehlerfreier oder fehlerhafter Benutzung von
AntiCicloVir entstanden sind !
Das bedeutet beispielsweise fuer den Fall, dass Ihnen Hardware- oder Software-
schaeden entstanden sind, welche durch ein Virus verursacht wurden, welches
AntiCicloVir nicht erkannt hat, dass ich dafuer nicht die Verantwortung
uebernehmen werde !
Aber ich hoffe, dass derartige Dinge nicht geschehen werden.
Wie verwende ich AntiCicloVir ?
AntiCicloVir ist ein einfach zu handhabender aber leistungsstarker
Viruskiller, wie einst VirusX.
Es ist nicht schwer, mit AntiCicloVir zu arbeiten !
Heutzutage erscheinen immer mehr Superviruskiller, doch immer mehr Anfaenger
haben Schwierigkeiten, diese Superviruskiller auch zu 100 Prozent effizient
auszunutzen, weil diese Programme mit der Zeit so komplex geworden sind, dass
man zuerst, Giga-Bytes von Dokumentationsdateien zu lesen hat, bevor man weiss,
wie man solch` einen Superviruskiller am sinnvollsten einsetzt ...
Jeder, der sich intensiv mit seinem Computer beschaeftigt, weiss, dass einzelne
Teilbereiche der Informatik mittlerweile so komplex und umfangreich geworden
sind, dass man wirklich kaum noch Zeit hat, sich intensiv mit anderen Teil-
bereichen auseinanderzusetzen ...
Jemand, der sich beispielsweise fuer Grafikprogrammierung interessiert, hat
weder Zeit noch Lust, sich auch mit Computer-Viren und Antivirusprogrammierung
auseinanderzusetzen, doch er wird nicht drumrumkommen ...
Leider scheint sich nun aber auch im AMIGA-Bereich immer mehr der Trend, in
Richtung komplexerer Programme durchzusetzen, wie bereits im PC-Bereich ...
Hier muss man erst tausendseitige Buecher waelzen, oder Giga-Bytes an Daten aus
Dokumentationsdateien konsumieren, bevor man ueberhaupt weiss, welche
Funktionnen einem mit einem bestimmten Programm zur Verfuegung stehen
- Funktionen, von denen - wie die Praxis lehrt - i.d.R. ohnehin nur die
wenigsten im konkreten Anwendungsfall sinnvoll sind ...
Mit der Programmierung von AntiCicloVir wird das Ziel verfolgt, einen
Viruskiller zu entwickeln, der es dem Anwender ermoeglicht, sich ueberhaupt
nicht mehr mit dem Thema Computer-Viren auseinandersetzen zu muessen und
gleichzeitig ein Maximum an Sicherheit gewaehrleistet !
Erreicht werden soll dies durch eine optimale Hierarchie und Struktur der
Viruskiller-Funktionen, die es jedem ohne umfangreiche Kenntnisse ermoeglichen
soll, den Viruskiller am sinnvollsten einzusetzen.
Dieses Ziel ist gewiss nocht nicht erreicht !
Wenn Sie AntiCicloVir benutzen wollen, dann brauchen Sie nur diese kurze
Dokumentation zu lesen und folgende Dinge zu wissen:
AntiCicloVir ist momentan eher ein Virenjaeger als ein Virenkiller !
Es kann zwar Viren im Speicher erkennen, aber sie nicht aus demselben entfernen,
da es keine Vektoren veraendert !
Momentan habe ich naemlich nicht die Original-Adressen aller Systemvektoren
aller Betriebssysteme, da ich leider nicht so viel Geld habe, wie einige
Antivirus-Freaks, um mir alle AMIGA-Modelle zu kaufen, die Commodore `mal auf
den Markt gebracht hat ...
In manchen Faellen duerfte es aber auch ausreichen, die Resetvektoren durch
AntiCicloVir ruecksetzen zu lassen, um ein Virus aus dem Speicher zu entfernen.
Danach sollten Sie aber einen Reset ausfuehren, damit das Virus dann endgueltig
aus dem Speicher fliegt, falls es den Reset nicht ueberlebt haben sollte !!!
Wegen der geringen Dateilaenge von nur 22 KB, eignet sich AntiCicloVir besonders
gut zum Einbinden in die Startup-Sequence.
Kopieren Sie AntiCicloVir in`s Unterverzeichnis c und rufen Sie es von der
Startup-Sequence, unter Verwendung der option `-c` fuer den schnellen Speicher-
test, auf !
Jedesmal wenn Sie von dieser Diskette booten, zeigt AntiCicloVir ihnen die
Adressen einiger wichtiger Systemvektoren und sucht im Speicher nach bekannten
Viren.
Falls AntiCicloVir ein Virus im Speicher gefunden haben sollte, dann befehlen
Sie AntiCicloVir, den Resetvektoren zu loeschen und loesen Sie einen Reset aus !
Nachdem Sie von einer `sauberen` Diskette gebootet haben, sollten Sie
AntiCicloVir ein zweites Mal starten, um zu sehen, ob das Virus noch im
Speicher steht !
Um die Boot-Sektoren der Disketten mit AntiCicloVir auf Virenbefall zu testen,
starten Sie AntiCicloVir unter Angabe der Option `-m` von der Shell oder von
der Workbench-Oberflaeche aus.
AntiCicloVir testet jede Diskette in allen angeschlossenen Laufwerken, sobald
Sie eine in`s Laufwerk eingelegt haben.
AntiCicloVir testet nicht nur die Boot-Sektoren von eingelegten Disketten,
sondern auch gleichzeitig deren Disk-Validatoren.
Wenn Sie Ihre Disketten auch auf Datei- und Linkviren hin testen wollen, dann
benutzen Sie AntiCicloVir bitte von der Shell aus:
Geben Sie den Dateinamen von AntiCicloVir gefolgt vom Namen des zu
untersuchenden Verzeichnisses oder Unterverzeichnisses an !
Sie sehen, es ist sehr einfach AntiCicloVir zu verwenden !!!
Wie teste ich den Speicher auf Viren ?
Wenn Sie AntiCicloVir, unter Verwendung der Option `-m`, oder von der Workbench-
Oberflaeche aus, starten, so wird es Ihnen zuerst die ROM-Adressen der
wichtigsten Systemvektoren anzeigen.
Wenn einer der Resetvektoren ColdCapture, CoolCapture, KickTagPtr nicht mehr
auf Null zeigt, wird AntiCicloVir einen Requester erzeugen, mit dem es Sie
fragt, ob es diese veraenderten Resetvektoren wieder zuruecksetzen soll.
Die anderen Resetvektoren WarmCapture, KickMemPtr und KickCheckSum koennen
allein, ohne die oben erwaehnten Vektoren, von Viren nicht verwendet werden.
AntiCicloVir ueberprueft nicht die Adressen der ROM-Vektoren und kann sie auch
nicht auf ihre Original-ROM-Adressen zuruecksetzen, falls sie veraendert worden
sind !
Aber jedes Virus haengt ueber einen der oben erwaehnten Resetvektoren im
Speicher herum, und das ist der Punkt, an dem AntiCicloVir jedes neue unbekannte
Virus erkennen wird !
AntiCicloVir zeigt Ihnen die wichtigsten Adressen der ROM-Vektoren aus der
Exec-Basis-Struktur, der exec.library, der intuition.library, der dos.library,
dem trackdisk.device und dem keyboard.device.
Wenn Sie AntiCicloVir mit der Option `-c` gestartet haben, dann wird
AntiCicloVir einen schnellen Speichertest durchfuehren.
Wenn AntiCicloVir ein bekanntes Virus im Speicher gefunden hat, wird es einen
Requester erzeugen, um Sie zu warnen.
Aber es kann kein Virus aus dem Speicher entfernen, weil es keine Original-ROM-
Adressen zuruecksetzt !!!
Bitte setzen Sie mittels AntiCicloVir die Resetvektoren zurueck und fuehren
einen Reset aus, um das Vius aus dem Speicher zu schmeissen, oder schalten Sie
den AMIGA aus !
Nachdem AntiCicloVir die Resetvektoren zurueckgesetzt und Sie einen Reset
ausgeloest haben, booten Sie bitte von einer `sauberen` Diskette und starten
AntiCicloVir ein zweites Mal, um zu sehen, ob das Virus noch immer im Speicher
steht oder nicht ...
Wie teste ich Dateiverzeichnisse auf Viren ?
Wenn Sie das Haupt- oder ein Unterverzeichniss einer Diskette auf Viren testen
wollen, so muessen Sie zuerst in die Shell wechseln, um AntiCicloVir gefolgt
vom Pfadnamen des zu testenden Verzeichnisses zu starten.
Wollen Sie jedoch nur eine einzelne Datei untersuchen, so geben Sie bitte den
korrekten Pfadnamen des Veryeichnisses, in dem sich die Datei befindet, an.
AntiCicloVir zeigt jeden Eintrag (Dateiname) eines Verzeichnisses an und dessen
Schutz-Status (Protection-Bits), dessen Dateilaenge und falls vorhanden
Kommentar.
Ausserdem kann es den Inhalt der Dateien nach ausfuehrbarem Code und Programm-
code von Datei-, Link-, und Disk-Validator-Viren, sowie nach dem von
Trojanischen Pferden und Bomben hin untersuchen !
Wenn etwas von dem oben erwaehnten widerlichen Muell in einer Datei gefunden
wurde, dann haengt AntiCicloVir eine kurze Meldung an den Dateinamen `ran
und erzeugt einen Requester, um Ihnen die Moeglichkeit zu geben, dieses Virus
zu loeschen.
AntiCicloVir kann keine unsichtbaren Dateinamen aus der Startup-Sequence ent-
fernen !
Wenn Sie mithilfe von AntiCicloVir ein Dateivirus entfernt haben, dann schauen
Sie mittels eines Dateimonitors oder beispielsweise des Shell-Kommandos TYPE
in Ihrer Startup-Sequence nach unsichtbaren Zeichen, welche Dateiviren
verwenden, um sich selbst aufzurufen ...
Sie muessen diese unsichtbaren Zeichen unter Verwendung der Backspace-Taste
loeschen, oder Sie werden nach jedem Reboot von dieser Diskette die Fehler-
meldung `unknown command` erhalten !
Da AntiCicloVir in jedem Verzeichnis nach Dateinamen, welche unsichtbare
Zeichen enthalten, sucht, kann es auch komplett neue Dateiviren aufspueren,
welche es bis zu diesem Zeitpunkt noch nicht kannte !!!
Das ist sehr sinnvoll ...
Bitte senden Sie neue unsichtbare Dateien an meine Adresse !
Danke !
Wie teste ich Boot-Sektoren auf Viren ?
Um die Boot-Sektoren mit AntiCicloVir auf Viren zu testen, muessen Sie
AntiCicloVir von der Shell, unter Angabe der Option `-m`, oder von der
Workbench-Oberflaeche aus, starten.
Nachdem Zeigen der Adressen der wichtigsten ROM-Vektoren und Passieren des
Speichertests, installiert AntiCicloVir eine Intuition-Fensterleiste am oberen
Rand des aktuellen Fensters und wartet nun so lange, bis Sie irgendeine Diskette
in`s Laufwerk eingelegt haben.
AntiCicloVir untersucht die Boot-Sektoren aller Disketten in allen
angeschlossenen Laufwerken, sobald Sie irgendeine Diskette in irgendein
Laufwerk eingelegt haben !!!
Wenn AntiCicloVir ein bekanntes Bootblock-Virus gefunden hat, dann wird es
einen Requester erzeugen, um Sie zu fragen, ob es dieses Bootblock-Virus, durch
Ueberschreiben mit einem Standard-Bootblock, loeschen soll.
Wie teste ich den Disk-Validator auf Viren ?
Um den Disk-Validator Ihrer Disketten auf Disk-Validator-Viren zu testen,
muessen Sie AntiCicloVir, unter Angabe der Option `-m`, von der Shell, oder
von der Workbench-Oberflaeche aus, starten.
Nachdem Zeigen der wichtigsten ROM-Adressen und dem Passieren des Speichertests,
installiert AntiCicloVir eine Intuition-Fensterleiste am oberen Rand des
aktuellen Fensters und wartet so lange, bis Sie irgendeine Diskette in`s
Laufwerk gelegt haben.
Wenn irgendein Disk-Validator-Virus auf der Diskette gefunden wurde, dann er-
zeugt AntiCicloVir einen Requester und ueberlaesst Ihnen die Wahl, dieses
Virus zu loeschen oder nicht zu loeschen.
Beschreibung einiger repraesentativer AMIGA-Viren:
- SCA:
Dieses war das erste Virus fuer den AMIGA.
Es lebt in den ersten beiden Sektoren der Spur 0 einer Diskette -
genannt der Bootblock.
Jedesmal wenn Sie von solch` einer infizierten Diskette booten, kopiert
sich das SCA-Virus absolut in`s CHIP-RAM an die Speicherposition $7EC00.
Danach kontrolliert es, ob die dos.library resident ist und stoppt so
lange, bis die dos.library wirklich resident ist.
Das SCA-Virus setzt den Resetvektoren CoolCapture auf seine eigene
Adresse, welche $7EC3E lautet, und schlaeft nun so lange, bis Sie
einen Reset ausfuehren...
Ausserdem berechnet es eine neue Pruefsumme fuer die Exec-Basis-
Struktur.
Sobald Sie Ihren Computer rebooten, entfernt das SCA-Virus die ROM-
Adresse des Vektoren der DoIO ()-Routine und setzt dort die Adresse
einer eigenen Routine ein.
Wenn nun der AMIGA versucht, seinen eigenen IORequest zu starten,
unter Verwendung der ROM-Routine DoIO (), um von einer Diskette zu
booten, wird das SCA-Virus aktiviert und aendert den IORequest fuer
seinen eigenen Verwendungszweck, um den Code von der Speicherposition
$7EC00 in die ersten beiden Sektoren der Spur 0 einer Diskette - ge-
nannt Bootblock - zu schreiben ...
Danach setzt es die Original-ROM-Adresse in den Vektoren der Routine
DoIO ().
Das SCA-Virus verursacht keine Schaeden, aber es gibt die folgende
Mitteilung aus:
`Something wonderful has happened.
Your AMIGA is alive !!!
and, even better ...
some of your disks are infected by a VIRUS
Another masterpiece of The Mega-Mighty SCA !!!`
Viren wie SCA nennen wir Bootblock-Viren !
- BGS9:
Nicht ganz so gefährlich, aber dennoch lästig ist das BGS 9-Virus !
Es sucht sich das erste ausführbare Programm aus der Startup-Sequence
und verschiebt es unter dem unsichtbaren Namen $A0A0A0202020A0202020A0 in`s
Verzeichnis `DEVS:` !
Das Dateivirus selbst kopiert sich anstelle des Original-Programmes.
Nach jedem Abarbeiten der Startup-Sequence, wird es aktiviert !
Mittlerweile gibt es zwei Versionen dieses Dateiviruses !
Nachdem dieses Virus gestartet wurde, schreibt es sich als `MemList`-Struktur
in den Speicher und gibt in KickMemPtr einen Zeiger darauf zurück !
In den KickTagPtr wird die Adresse für das Resetprogramm eingetragen und
mit SumKickData () die KickCheckSum berechnet und ebenfalls eingetragen.
Nach jedem Reset verbiegt das Resetprogramm den OpenWindow ()-Vektor auf
eine Vermehrungsroutine, welche beim Rücksprung diesen Vektor wieder
auf die ROM-Adresse setzt !
Nach vier Resets wird folgender Text ausgegeben:
` A COMPUTER VIRUS IS A
DISEASE
TERRORISM IS A
TRANSGRESSION
SOFTWARE PIRACY IS A
CRIME
THIS IS THE CURE
BBB GGGGGG SSSS 99999
B B G S 9 9
B B G S 9 9
BBB G S 99999 Bundesgrenzschutz Sektion 9
B B G GGGG S 9 Sonderkommando "EDV"
B B G G S 9
BBB GGGGGG SSSS 99999`
Außerdem werden auch beide Viren im Speicher erkannt !
Doch leider können die Viren BGS 9 und BGS 9 II im Speicher
nicht voneinander unterschieden werden !
Sie sind nahezu identisch und unterscheiden sich nur in zwei Details
voneinander !
Zum Einen wurde ein Byte im unsichtbaren Namen des BGS9-Viruses auf
der Diskette geändert und zum Anderen wurde ein Byte in der Kodierung
des ASCII-Textes im Speicher geändert !
Ich vermute, daß diese Änderungen nur vorgenommen wurden, um einen
bestimmten Viruskiller zu täuschen !
Die BGS 9-Viren funktionieren auch unter OS 3.01 !
- Bret Hawnes:
Dieses 2608 Bytes große Dateivirus tarnt sich als unsichtbares Programm
im Hauptverzeichnis jeder infizierten Diskette und schreibt seinen
Aufruf in die s/startup-sequence !
Somit hat das Bret Hawnes-Virus gewisse Ähnlichkeiten mit den Revenge
of the Lamer Exterminator-Viren, obwohl ich schreiben muß, daß diese
weitaus professioneller programmiert worden sind !
Es steht als unsichtbare Datei auf der Diskette, die dem Hexadezimal-Wert:
$C0A0E0A0C0 entspricht !
Dieses Dateivirus kopiert sich absolut nach $7F000 in den Speicher und
setzt KickTagPtr & KickCheckSum auf sein Resetprogramm.
Der Interrupt-Vektor 3 wird auf eine eigene Adresse für die Textausgabe
verbogen.
Waehrend des Resets werden noch die Vektoren der Routinen OpenLibrary (),
OpenWindow () verbogen und wieder zurueckgesetzt !
Der Vektor OpenLibrary () wird verbogen, damit das Virus immer beim
Oeffnen einer Systembibliothek nach dem Reset aktiviert wird und warten kann,
bis die intuition.library geoffnet wird !
Ist dies geschehen, wird OpenLibrary () wieder auf die ROM-Adresse gesetzt
und nun OpenWindow () verbogen.
Jetzt wartet Bret Hawnes so lange, bis AmigaDOS das CLI-Fenster
oeffnet und schreibt sich bei dieser Gelegenheit auf die Diskette !
Nach neun Vermehrungen zerstört dieses Virus Disketten und ueberschreibt
den Bootblock !
Sind zwanzig Minuten vergangen, so wird folgender Text ausgegeben:
`GUESS WHO`S BACK ??? VEP. BRET HAWNES BLOPS YOUR SCREEN
I`VE TAKEN THE CONTROL OVER YOUR AMIGA !!!
THERE IS ONLY ONE CURE: POWER OFF AND REBOOT ! ! ! `
Das Virus löscht den Zeiger CoolCapture.
- DISASTER-MASTER:
Dieses 1740 Bytes große Virus tarnt sich als `Clear Screen`-Befehl
unter dem Namen `cls` im `c`-Verzeichnis und schreibt einen eigenen
Aufruf in die s/startup-sequence: `cls *` !
Das Virus kann entweder von einem unwissenden Anwender aktiviert werden,
der es aus dem `c`-Verzeichnis als `cls` startet !
Dabei wird der Bildschirm gelöscht und das Virus in den Speicher kopiert.
Wenn es von der startup-sequence aus gestartet wird, dann benutzt es
die Option `*`.
Dabei wird der sichtbare Bildschirm nicht gelöscht und das Virus
bleibt so unbemerkt und kann sich in den Speicher kopieren !
Im Speicher setzt das Dateivirus die Vektoren KickTagPtr &
KickCheckSum auf seine Adresse.
Waehrend der Resetphase verbiegt das Virus den Vektoren DoIO () auf eine
eigene Routine, welche auf den Zeitpunkt wartet, zu dem die `intuition.library`
verfuegbar ist.
Ist dies der Fall, so wird der Vektor OpenWindow () aus der `intuition.library`
auf eine viruseigene Adresse verbogen und DoIO () wieder auf die ROM-Adresse
gesetzt.
Ueber OpenWindow () findet nun die Vermehrung statt, sobald das
Betriebssystem das AmigaDOS-Fenster oeffnet !
Anschliessend wird auch OpenWindow () wieder auf die ROM-Adresse gesetzt.
So ist es nach jedem Reset aktiv und kopiert sich als `cls` in`s
`c`-Verzeichnis neuer Disketten und schreibt den Befehl `cls *` in
die s/startup-sequence !
Dieses Virus wird auch vom T.C.R. Intromaker erzeugt, der in
einigen PD-Serien erschienen ist !
Wenn sich dieses Virus im Speicher befindet, kann manchmal die
AmigaDOS-Anzeige am linken oberem Bildschirmrand verschwinden !
Dieses Virus scheint aber noch ein paar Gag`s mehr `drauf zu haben,
als ich in meiner letzten Dokumtation beschrieben habe !
So kann es beispielsweise nach dem Booten von der Systemdiskette,
das übliche AmigaDOS-Fenster in einen Screen umwandeln, wie man
ihn beispielsweise von der Workbench-Oberfläche oder einigen
Textanzeigeprogrammen her kennt !
Das Disaster Master-Virus kann auch eine `Guru-Meditation` aus-
lösen, wobei die Fehlernr. dem Herstellungsdatum dieses Viruses
entspricht !
Mit dieser Fehlermeldung stellt sich Ihnen das Dateivirus vor und bietet
die Moeglichkeit, es zu loeschen an
Im Virencode befindet sich auch eine Routine zum Zerstoeren von Disketten,
von der ich allerdings nicht weiss, ob diese je erreicht wird ...
Moeglicherweise wird diese Routine nach einer bestimmten Anzahl von
Vermehrungen angesprungen.
- IRQ:
Dieses 1096 Bytes große Linkvirus gilt als das älteste und erste Amiga-
Linkvirus.
Es kopiert sich als Hunk entweder in das erste ausführbare Programm aus
der s/startup-sequence oder es infiziert den CLI-Befehl DIR, falls
es kein anderes ausführbares Programm gefunden hat !
Um resetfest zu bleiben, setzt es die Zeiger KickTagPtr & KickCheckSum
auf seine Adresse im Speicher.
Zum Weiterkopieren wird der Vektor der Routine OldOpenLibrary () verbogen.
Die OldOpenLibrary-Routine entstammt dem KickStart V1.0 und sollte von
neueren Programmen nicht mehr verwendet werden, da es mittlerweile eine
bessere Routine namens OpenLibrary () gibt !
Die OldOpenLibrary-Routine wurde unter den neuen Betriebssystem-Versionen
nur deshalb erhalten, damit ältere Programme auf den neueren Amiga-Modellen
auch noch laufen !
Die OpenLibrary-Routinen werden von Programmen benutzt, um die System-
bibliotheken zu öffnen !
Denn sämtliche für Programme wichtige Routinen sind schon im Betriebssystem
enthalten und können somit von Programmen genutzt werden !
Das IRQ-Virus richtet keine Schäden an, kann aber durch Texte in der
Fensterleiste wie folgende recht nerven: `AmigaDOS presents a new virus by
the IRQ-Team V41.0`.
Das IRQ-Linkvirus arbietet nur mit KickStart V1.2 zusammen und erzeugt
bei hoeheren ROM-Versionen gleich nach dem Start Systemabstuerze.
- Golden Rider:
Das Golden Rider-Virus ist das zweite `echte Linkvirus` in meiner
Dokumentation !
Dieses Virus steht immer ab $7C000 über CoolCapture resetfest im
Speicher !
Es verbiegt ansonsten noch die Vektoren DoIO () und Open () aus der `dos.
library` !
Dieses Linkvirus funktioniert, meiner Meinung nach, anders als übliche
Linkviren !
Während Linkviren wie CCCP oder Smily Cancer beispielsweise einen
eigenen Hunk in ein infiziertes Programm schreiben und diesen in dessen
Hunk-Tabelle eintragen, kopiert sich das Golden Rider-Virus selbst
in den ersten Programm-Hunk !
Dadurch kann man es nicht mehr über die Hunk-Tabelle erkennen, sondern
muß den kompletten ersten Hunk eines Programmes auf dieses Virus
checken !
Das Virus ersetzt einfach den Befehl `RTS` am Ende des ersten Hunk`s
durch `NOP` und kopiert sich selbst dann hinter diese Stelle.
Dadurch wird beim Beenden des ersten Hunk`s nicht in die aufrufende
Ebene zurückgesprungen, sondern nur der Programmzähler erhöht und
anschließend das Virusprogramm ausgeführt !
Das Virus zerstört keine Disketten und gibt auch keine Meldetexte aus.
Allerdings ist der Text: `>>> Golden Rider <<< by ABT` immer am Ende
des ersten Hunk`s lesbar !
- SADDAM:
Dieses 1848 Bytes große Virus tarnt sich als Disk-Validator im Verzeichnis
`L` auf infizierten Disketten !
Jede mit einem SADDAM-Virus infizierte Diskette hat einen
Disk-Validating Error, den das SADDAM-Virus selbst angelegt hat.
Dieses Virus ist das erste, welches sich unter AmigaDOS selbst
aufrufen kann, ohne daß es vom Anwender durch Booten oder Starten eines
verseuchten Programmes etwa aktiviert wurde !!!!!!
Das Einlegen einer mit einem SADDAM-Virus infizierten Diskette reicht
aus, damit sich das Virus in den Speicher kopieren kann !
Es simuliert einen echten Disk-Validator und hat auch diesselbe Größe
des Original-Disk-Validators, doch im Gegensatz zu diesem, ist es
bis auf das Wort BitMap CheckSum Error total kodiert und kann so
von Anfängern schwer unterschieden werden !
Es kopiert sich auf jede nicht schreibgeschützte Diskette im Laufwerk
DF0: als Disk-Validator !
Wenn es kein `L`-Verzeichnis auf einer Diskette findet, dann kann es
dieses Verzeichnis selbst anlegen !
Bei bereits vorhandenem Disk-Validator, kopiert sich das Virus einfach
`drüber !!
Der Disk-Validator ist eine Art `externe Betriebssystem-Routine`, die
von AmigaDOS immer dann aufgerufen wird, wenn es auf eine Diskette
mit ungültiger BAM ( Block Allocation Map ) trifft !
In der BAM jeder Diskette steht zum Beispiel wieviele und welche
Blöcke schon belegt sind.
Ist diese BAM ungültig, so hat die Diskette einen Disk-Validating Error,
und das Betriebssystem muß mit Hilfe einer Routine die entsprechenden
Block-Angaben selbst herausfinden !
Diese Routine ist der Disk-Validator im Verzeichnis `L` !
Mit dessen Hilfe wird herausgefunden, wieviele und welche Blöcke
einer Diskette schon belegt sind.
Das SADDAM-Virus beinhaltet ebenfalls die Routine eines Disk-Validators
und wird auch vom Betriebssystem bei ungültiger BAM aufgerufen.
Dieses Virus setzt den BitMap-Zeiger im Rootblock der Diskette , auf der es
sich kopiert, auf eine sinnlose Adresse, was das Betriebssystem später
ständig beim Einlegen dieser Diskette zwingen wird, den :L/Disk-Validator -
also das SADDAM-Virus - zu starten !
Das SADDAM-Virus setzt den Zeiger ColdCapture auf seine Speicher-
adresse und kann so auch unter KickStart 1.3 ohne SetPatch r
den Reset ueberleben !
Außerdem werden verbogen InitCode (), OpenWindow (), BeginIO (),
Close (trackdisk.device) & Rasterbeam !
Es ist nach jedem Reset und nach jedem Diskettenwechsel aktiv und
kopiert sich auf die aktuelle Diskette !
Das SADDAM-Virus zerstört die Disketten, indem es nach einiger Zeit
einige Blöcke in IRAK umbenennt und deren Inhalt mit einem bestimmten
Wert kodiert !
Diese kodierten Datenblöcke werden von AmigaDOS nicht mehr anerkannt
und lösen so Read/Write Errors aus !
Solange sich das SADDAM-Virus jedoch aktiv im Speicher befindet, dekodiert
es die IRAK-Datenbloecke und unterdrueckt so derartige Fehlermeldungen !
Erst wenn es aus dem Speicher entfernt wurde, kommt es zu read/write
errors !!!
Mir ist aufgefallen, daß sich das SADDAM-Virus nicht auf Disketten
kopieren kann, wenn man ihnen die Namen` DF1`,`DF2` oder `DF3` gibt !!!
Da die Gefahr besteht, daß sich schon beim Durchchecken Ihrer Sammlung,
ein mögliches SADDAM-Virus in den Speicher kopiert, empfiehlt es
sich, zuerst alle Disketten mit aktiviertem Schreibschutz zu testen !
Anschließend sollten die mit einem SADDAM-Virus infizierten Disketten
aussortiert und der Amiga ausgeschaltet werden.
Danach können Sie den Amiga wieder einschalten, und mit AntiCicloVir
die SADDAM-Viren von den befallenen Disketten löschen !
Zwar kopiert sich das Virus wieder in den Speicher, aber dafür wird
es nur beim Diskettenwechsel aktiv !
Wenn das SADDAM-Virus von einer infizierten Diskette gelöscht wurde,
kopiert es sich erst wieder auf diese, wenn sie zum zweiten Mal einge-
legt wird ( und das sollten Sie vermeiden !!! ) !
Nachdem Sie alle Disketten vom SADDAM-Virus befreit haben, werden Sie
merken, daß alle einen Disk-Validating Error haben, an dem aber nicht
AntiCicloVir, sondern das Virus schuld ist.
Gewiß kann man in komplizierter Weise diesen Fehler auch mit einem
Diskettenmonitor entfernen, aber es geht auch viel einfacher mit Hilfe
des Betriebssystems !
Benutzt man einen Disketteneditor, so muss man zuerst die Original-Adresse
des BitMap-Blocks suchen, die das SADDAM-Virus immer auf der betroffenen
Diskette abspeichert.
Anschliessend muss diese Adresse im BitMap-Zeiger des Rootblockes
eingetragen werden.
Dieser Disk-Validating Error ist zwar harmlos, aber lästig, da man
auf derartigen Disketten keine Programme oder Dateien mehr abspeichern
kann !
Legen Sie also einfach die Workbench-Diskette ein, auf der sich
hoffentlich der echte Disk-Validator befindet und booten Sie von
ihr !
Nachdem Sie sich im CLI und die CLI-Befehle im RAM befinden,
sollten Sie nun eine Diskette mit dem Disk-Validating Error einlegen !
Daraufhin wird das Betriebssystem den Disk-Validating Error melden
und nach der Workbench-Diskette verlangen, auf der sich ja der
Disk-Validator befindet.
Mit Hilfe dieses Disk-Validator`s`, werden nun die Anzahl und Adressen
der belegten Blöcke auf der fehlerhaften Diskette in den Speicher
kopiert und somit ist die Diskette für AmigaDOS vorerst wieder gültig.
Jetzt können Sie vorläufig wieder Schreibzugriffe auf diese Diskette
ausüben und das sollten Sie auch tun !
Denn bei jedem Schreibzugriff auf einer Diskette, wird eine neue gültige
BAM angelegt und die Diskette hat somit keinen Disk-Validating Error
mehr !!!
Löschen Sie nun also irgendeine unwichtige oder schreiben Sie eine
wichtige Datei auf diese Disk, damit die BAM wieder stimmt !!
Sie können beispielsweise .info löschen !
Schwieriger ist es mit den Disketten, auf denen das SADDAM-Virus
schon einzelne Datenblöcke kodiert hat !
Wenn Sie die vorerst verloren gegangenen Daten nicht mehr brauchen,
mit der Diskette aber sinnvoll weiterarbeiten wollen, dann können
Sie auch das Programm DiskDoctor benutzen, um die Read/Write Errors
zu beseitigen !
Lesen Sie dazu bitte auch das Amiga-Benutzerhandbuch von Commodore !
Das SADDAM-Virus wurde mir von Gregory Sapsford ,Fohlenkamp 33,
W-4600 Dortmund 13 zugesandt !
Post
Sollten Sie neue AMIGA-Viren, Bootbloecke, Komprimierungsprogramme oder
residente Programme erhalten haben, dann bitte ich Sie, mir dieses Material
zu zusenden !
Ich bin an jedem Fehlerbericht ueber AntiCicloVir interessiert !
Sollten Sie irgendwelche Fragen, Tips oder Anregungen zum Assembler-Quelltext
von AntiCicloVir haben, so senden Sie Ihre Briefe bitte an die Adresse, die am
Ende dieser Datei erscheint !
... aber Sie koennen diese Adresse auch nutzen, wenn Sie Assembler-Programmierer
sind und einfach nur Quelltexte mit mir austauschen wollen ...
Mit dieser Dokumentationsdatei duerfte dann wohl der endgueltige Beweis fuer
die Aussage erbracht worden sein, die an gleicher Position am Ende der
englisch-sprachigen Dokumentation gemacht wurde ...
Matthias Gutt
(Member of SHI)
Kantstr. 16
21335 Lueneburg
Germany